<?

/*
 * Структура каталога лекарств
 * /catalog/card/2 - карточка товара(по айди)
 * /catalog - сортировка по заболеванию
 * /catalog/name - список с сортировкой по названию
 * /catalog/firm - список с сортировкой по производителю
 *
 * /catalog/firms - список производителей
 * /catalog/firms/name - конкретный производитель (по нейму)
 *
 * ПОД ВОПРОСОМ:
 * /catalog/disease - список заболеваний
 * /catalog/disease/name - конкретное заболевание,как вариант, лечение болезни гомеопатией
 */


include_once('config.php');
function paginator($countItem, $maxItems, $maxPages=10){
    $paginator='<span class="paginator"><label>Страницы:</label>';
    $current=((isset($_GET['page'])) ? $_GET['page'] : 1)-1;
    $page_count=ceil($countItem/$maxItems);
    if ($maxPages>0 && $page_count<$maxPages){
        for ($i=0;$i<$page_count;$i++){
            $sel='';
            if ($i==$current)
                $paginator.='<span class="page selected">'.($i+1).'</span>';
            else
                $paginator.='<span class="page"><a href="?page='.($i+1).'">'.($i+1).'</a></span>';

        }
    }else{
        $paginator='<span class="paginator"><label>Страница '.($current+1).'/'.$page_count.':</label>';
        $from=0;
        if ($current+1>$maxPages){
            $from=(floor($current/$maxPages));
            $from=($from)*$maxPages;
            $paginator.='<span class="prev_page"><a title="Предыдущие '.$maxPages.'" href="?page='.(($from)).'"><</a></span>...';
        }
        for ($i=$from;$i<$from+$maxPages;$i++){
            if ($i<$page_count){
            $sel='';
            if ($i==$current)
                $paginator.='<span class="page selected">'.($i+1).'</span>';
            else
                $paginator.='<span class="page"><a href="?page='.($i+1).'">'.($i+1).'</a></span>';
            }

        }
        if ($from+$maxPages+1<$page_count)
        $paginator.='...<span class="next_page"><a title="Следующие '.$maxPages.'" href="?page='.($from+$maxPages+1).'">></a></span>';
    }
    $paginator.='</span>';
    return $paginator;

}

function catalog($target, $path) {



    // новая разбивка
    /*
      $cnt = count($path);
      if (empty($path[$cnt-1])) $last = $path[$cnt-2];
      else $last = $path[$cnt-1];
      // если ласт не товар, не содержит id--- то значит это категория, или подкатегория
      $pattern = '/^id---/';
      preg_match($pattern, substr($last, 0), $matches, PREG_OFFSET_CAPTURE);
      if ($matches[0][0] == 'id---') echo 'produCT'; */
      $path2 = explode('---', $_SERVER['REQUEST_URI']);

      if ($target == 'center-menu') {
          $search_form=' <br />
          <div class="ContextCenter"><nobr>Поиск по каталогу                             <form action="/search" method="GET">
                                <input type="text" style="width:80%" name="search_text" value=""/><input type="submit" value="Найти" />
                            </form>                            
			</nobr></div>
          ' ;
            if ($path[2]=='cosmetic')
                echo menu('c-center', $path, '20','Показать:').$search_form;
            else
                echo menu('c-center', $path, '2','Показать:').$search_form;
      }
      if ($path[2]=='cosmetic'){
          $main_key=3;
      }else{
          $main_key=2;
      }
       switch ($path[$main_key]) {
        case 'forma':
         if (empty ($path[$main_key+1]))   {
                      if ($target == 'title') echo  'Форма выпуска';
             show_forma($target);
         }
         if (!empty ($path[$main_key+1])) {
                  if ($target == 'title'){ echo  'Форма выпуска '; return; }
                show_category ($dopinfo, $target, $path);
             
             }

       
            break;
        case 'disease':
         if (empty ($path[$main_key+1]))   {
                      if ($target == 'title') echo  'Болезни';
             show_zab($target,$path);
         }
         if (!empty ($path[$main_key+1])) {
             show_category ($dopinfo, $target, $path);}


            break;

        case 'firms':

                  if (empty ($path[$main_key+1]))   {
                      if ($target == 'title') echo  'Производители гомеопатических препаратов';
                      show_firms($target,$path);
                  }
                  if (!empty ($path[$main_key+1])) {
                      show_category ($dopinfo, $target, $path);
                      
                  }
            break;

        case 'card':
             show_card($target,$path);
            break;
        default :
                     if ($target == 'title')   $text.=$GLOBALS['catalog']['title'];
                        echo show_category($dopinfo, $target, $path);
                        break;
            }





       if ($target == 'content')


        if (empty($path[$main_key]) || $path[$main_key]=='name' || $path[$main_key]=='firm') {




            if ($target == 'content') {
                if ($path[$main_key]=='cosmetic')
                    $text = menu('c-center', $path, '20','Показать:');
                else
                    $text = menu('c-center', $path, '2','Показать:');
                //$text.=;
                $text.='<div>' . $q['content'] . '</div>';

                //include_once 'auto_parser.inc';
            } // все контент на листинге

            echo $text;
            return;
        } // все листинг простой


// вывод переделываем под подкатегории
    // товар ищем по айдишке, name можем потом тоже добавить
    // смотрим, встречается ли в названии id---






    echo $text;
}

function category($parent, $type) {
    $z = mysql_query("SELECT * from cat where name = '$parent' order by title");
    $t = mysql_fetch_assoc($z);

    //if ($type == 'link') $text = '<a href="/cataloque/">'
    if ($type == 'title') {
        if (!empty($t['alias'])
        )
            $text = $t['alias'];
        else
            $text = $t['name'];
    }else {
        $text = $t['name'];
    }

    return $text;
}

function cat_list($target, $category) {
    if (empty($path[3])) {
        if (empty($_GET['child']) or $_GET['child'] == $cat['name']) {
            $count = mysql_fetch_assoc(mysql_query('select count(id) as count_all from catalog'));
        } elseif ($_GET['child'] == 'all')
            $count = mysql_fetch_assoc(mysql_query('select count(id) as count_all from catalog where cat= "' . $cat[id] . '"'));

        else
            $count = mysql_fetch_assoc(mysql_query('select count(id) as count_all from catalog '));


        $count = $count['count_all'];
        $cur_page = (isset($_GET['page_menu'])) ? $_GET['page_menu'] : 0;


        if (empty($_GET['child']))
            $text.='<h1>' . $cat['title'] . '</h1><div width="350px" style="display:block;">' . $cat['about'] . '</div>';
        else
            $text.='<h2>' . $cat['title'] . '</h2>  <h1>' . $ch_cat['title'] . '</h1><div width="350px" style="display:block;">' . $ch_cat['about'] . '</div>';

        if (empty($_GET['child']))
            $text.=admin_message(9, '<a href="/ADM/edit/' . $cat['id'] . '/?vid=cat"><img alt="Редактировать" src="/images/edit.gif"></a>');
        else
            $text.=admin_message(9, '<a href="/ADM/edit/' . $ch_cat['id'] . '/?vid=cat"><img alt="Редактировать" src="/images/edit.gif"></a>');;

        $page_switch = '';
        $text .= 'Найдено: ' . $count . ' ' . sklonenie($count, array('позиция', 'позиций'));
        if ($count > 6) {
            $page_switch = '<table class="sw_tab"><tr><td style="color:#a20412; font-family:Tahoma; font-weight:bolder;">Страница каталога: </td>';


            for ($i = 0; $i < ceil($count / 6); $i++) {
                if ($i == $cur_page)
                    $cl = '_sel';
                else
                    $cl = '';
                $pg = $i + 1;
                $page_switch.='<td class="pswitch' . $cl . '"><a href="?page_menu=' . $i . '&child=' . $_GET['child'] . '">' . $pg . '</a></td>';
            }
            $page_switch.='</tr></table>';
        }
        $text.='<br /><center>' . $page_switch . '</center>';
        $text.='<br /><table width="100%">';
        $child = $_GET['child'];
        $cat_name = $cat['name'];

        if (empty($_GET['child']))
            $q = "select * from catalog order by title limit " . ($cur_page * 6) . ",6";


        $qr = mysql_query($q);
        $i = 0;
        $np = 1; // номер по прядку
        if (isset($_GET['page_menu']) and $_GET['page_menu'] != 0)
            $np = ($_GET['page_menu'] * 6) + 1;
        while ($sub = mysql_fetch_assoc($qr)) {
            if ($i == 0) {
                $text.='<tr valign="top"><td class="catItem" width="350">';
            } else {
                $text.='<td class="catItem" width="500">';
            }
            if (file_exists(LocalDir . '/images/catalog/' . $sub['name'] . '---250.jpg'))
                $text.='<a href="/images/catalog/' . $sub['name'] . '---500.jpg" title="' . $sub['title'] . '" class="pirobox"><img style="margin-left:10px;" alt="' . $sub['title'] . '" title="' . $sub['title'] . '" src="/images/catalog/' . $sub['name'] . '---250.jpg" /></a>';
            $text.='<div width="350px" style="display:block; margin-left:10px; padding-top:0px; color:black; font-size:12pt; zoom:1; _display:inline">';
            $text.='<b style=" padding-bottom:20px;">
                              ' . $np . '. <a href="/zapchasti/' . $cat['name'] . '/' . $sub['name'] . '.html?child=' . $child . '">' . $sub['title'] . '</a>' . admin_message(9, '<a href="/ADM/edit/' . $sub['id'] . '/?vid=catalog" title="Редактировать"><img src="/images/edit.gif" alt="Редактировать"></a>&nbsp;&nbsp;' .
                            "<form style=\"display:inline-block;\" method=\"POST\" action=\"" . $_SERVER["REQUEST_URI"] . "\" title=\"Удалить\" onsubmit=\"return confirm_delete('Действительно удалить позицию?');\"><input type=\"hidden\" name=\"vid\" value=\"catalog\" /><input type=\"hidden\" name=\"id\" value=\"" . $sub['id'] . "\" /><input type=\"submit\" alt=\"Удалить\" style=\"background-image:url(/images/drop.gif); width:16px; height:16px; clear:both; \"></form>") . '</b><br/>';
            //$text.='<div><p>'.$sub['about'].'</p></div>';
            $text.='</br><small>Арт.№ ' . $sub['id'] . '</small></div>';
            $np++;
            if ($i == 0) {
                $text.= '</td>';
            } else {
                $text.= '</td></tr>';
            }
            $i = ($i == 0) ? 1 : 0;
        }
        if ($i == 1)
            $text.='<td width="50%">&nbsp;</td></tr>';
        $text.='</table><br/><center>' . $page_switch . '</center>';
    }


    if ($target == 'kroshki')
        return $kroshki;
    if ($target == 'title')
        return $title;
    if ($target == 'content')
        return $content;
}



function show_category($dopinfo,$type,$path){
        $order_by=' order by catalog.title';
        $main_key=2;
        if ($path[2]=='cosmetic'){
            $main_key=3;
        }
	if (isset($path[$main_key]) && ($path[$main_key]=='name' || $path[$main_key]=='firm')){
            if ($path[$main_key]=='name')
                $order_by=' order by title';
            if ($path[$main_key]=='firm')
                $order_by=' order by ftmp';
        }
	$zz0 = "SELECT catalog.*, zab.title as bolezn, zab.about, firms.title as firma, firms.description as opis  ";
        /*Для работы с косметикой разбил еще пол запроса*/
        $zz01 = "
            FROM `catalog`
               , zab
        left join cat_zab cz ON cz.idzab=zab.id
               , firms 
           where cz.idcat=catalog.id and catalog.fid = firms.id";
        
        if ($path[2]=='cosmetic' ) {
            $zz0 = "SELECT catalog.*, zab.title as bolezn, firms.title as firma, firms.description as opis";
            $zz01 = "
                        FROM `catalog` 
                    LEFT JOIN cos_series zab on zab.id=catalog.sid
                            , firms 
            where catalog.fid = firms.id and catalog.target = 'cos' ";                 
        }else{
            $zz01 .= " and catalog.target = 'lek'";
        }
        $zz1='';
            
        if ($path[$main_key]=='disease') $zz1 .= " and zab.name = '".$path[$main_key+1]."'" ;
        if ($path[$main_key]=='forma'){
            $forma=  mysql_fetch_assoc(mysql_query('select * from forma where name="'.$path[$main_key+1].'"'));
            $zz1 .= ' and catalog.idforma = '.$forma['id'].' ' ;
        }
        if ($path[$main_key]=='firms') $zz1 .= " and firms.name = '".$path[$main_key+1]."'" ;
// дополнительно для косметики и монопрепаратов
   
   
        
        $count=  mysql_fetch_assoc(mysql_query("SELECT count(catalog.id) as c ".$zz01.$zz1));
        $per_page=20;
        $current=((isset($_GET['page'])) ? $_GET['page'] : 1)-1;
        $pagin=  paginator($count['c']-1, $per_page);


        $zz = $zz0.$zz01.$zz1. ''.$order_by. ' limit '.($current*$per_page).','.$per_page;
        
 
        $z = mysql_query($zz);

        if ($type =='title') {
            $tmp = mysql_fetch_assoc($z);
             if ($path[$main_key]=='disease')  echo 'Гомеопатические препараты для лечения заболевания «'. $tmp['bolezn'].'»';  //    все с титлом
       if ($path[$main_key]=='firms')  echo 'Гомеопатические препараты компании «'. $tmp['firma'].'»';


       } //    все с титлом
        $tmp = mysql_fetch_assoc(mysql_query($zz));
        if ($path[$main_key]=='firms')
            $text = $tmp['opis'];
        $text .=$pagin.'<table width="100%" class="cat_table">
                        <tr><th>Наименование</th>';
        if ($path[$main_key]=='cosmetic' ){
            $text.='<th>Серия</th>';
        }else{
            $text.='<th>Заболевание</th>';
        }
        $text.='<th>Производитель</th>
                        <th>Цена</th>
                        ';
        $i = 0; // для матраса
	while ($t = mysql_fetch_assoc($z)) {
            /* список заболеваний */
            if ($path[$main_key]=='cosmetic'){
                $zabs=mysql_query('select cz.title  from cos_series cz where cz.id='.$t['sid'].'');
                $zab_list='';
                while ($zab=  mysql_fetch_assoc($zabs)){
                    if (!empty($zab_list))
                        $zab_list.=', ';
                    $zab_list.=$zab['title'];
                }
                
            }else{
                $zabs=mysql_query('select z.title  from cat_zab cz left join zab z on z.id=cz.idzab where cz.idcat='.$t['id'].' order by z.title');
                $zab_list='';
                while ($zab=  mysql_fetch_assoc($zabs)){
                    if (!empty($zab_list))
                        $zab_list.=', ';
                    $zab_list.=$zab['title'];
                }
            }
            /*---------------------*/
           $forma=mysql_fetch_assoc(mysql_query('select title  from forma where id='.$t['idforma']));
           
	   $text .= '<TR';
           $i++;
            if ($i%2==0) $text.= ' class="matras"';
            $text .= '><td width="35%"><a href="/'.$GLOBALS['catalog']['url'].'/card/'.$t['id'].'/">'.$t['title'].'</a><br />
                        '.$forma['title'].' '.$t['doza'];
                            
 if ($_SESSION['level'] >= 5){ 
    
            $text.='<a href="/ADM/edit/' . $t['id'] . '/?vid=catalog" style="color: red">Редактировать</a><br />';
            }
          $text .=      ' </td>
                        <td> '.$zab_list.' </td>
                        <td> '.$t['firma'].' </td>
                        <td>---- </td></tr>
                    ';
	}
        $text.="</table>".$pagin;
	if ($type == 'content') echo $text;
}


// перелинкова материалов

function relink($type,$id){

    $z = "select id, title from catalog where ";
    if($type == 'zab') $z .= "zid = $id";
    if ($type == 'firm') $z .= "fid = $id";
    $z .= " order by rand() limit 5";
    $zz = mysql_query($z);
    $text = '<table width="100%" class="cat_table">
<tr><th width="80%">Название</th><th>Цена</th></tr>
';
    $i = 0;
    while (mysql_affected_rows()>0 && $t = mysql_fetch_assoc($zz)){
        $text .= '<TR';
           $i++;
    if ($i%2==0) $text.= ' class="matras"';
                   $text .= '><td><a href="/'.$GLOBALS['catalog']['url'].'/card/'.$t['id'].'/">'.$t['title'].'</a></td>
                       <td>---</td>
                  </tr>
';
    }
    $text .= '</table>';

    return $text;
}

function show_zab($target,$path){
    
    if ($path[2]=='cosmetic')
        $z= mysql_query("select * from cos_series where is_from_auto=1 order by title");
    else
        $z= mysql_query("select * from zab  order by title");
    $content='';
    $content .= '<div class="listing">';
    while ($t = mysql_fetch_assoc($z)){
        if ($path[2]=='cosmetic')
            $content .= '<a href="/catalog/cosmetic/disease/'.$t['name'].'">'.$t['title'].'</a> <br /><br />';
        else
            $content .= '<a href="/catalog/disease/'.$t['name'].'">'.$t['title'].'</a> <br /><br />';
    }
    $content .= '</div>';
    if ($target == 'content')        echo $content;
}
function show_forma($target){
    $z= mysql_query("select * from forma  order by name");
    $content .= '<div class="listing">';
    while ($t = mysql_fetch_assoc($z)){
        $content .= '<a href="/catalog/forma/'.$t['name'].'">'.$t['title'].'</a> <br /><br />';
    }
    $content .= '</div>';
    if ($target == 'content')        echo $content;
}

function show_firms($target,$path){
    $z= mysql_query("select * from firms  order by title");
    $content .= '';
    while ($t = mysql_fetch_assoc($z)){
        if ($path[2]=='cosmetic')
            $content .= '<a href="/catalog/cosmetic/firms/'.$t['name'].'">'.$t['title'].'</a> <br />';
        else
            $content .= '<a href="/catalog/firms/'.$t['name'].'">'.$t['title'].'</a> <br />';
    }

    if ($target == 'content')
        echo $content;
}

function show_card($target,$path){




                $path[3] = mysql_real_escape_string($path[3]);


                $q = mysql_query("
                        select catalog.*, firms.name as fname,
                    firms.title as firma,

                    zab.name as zname,
                    zab.title as disease
                    from catalog
               LEFT JOIN firms on catalog.fid = firms.id
               left join zab on zab.id=catalog.zid
                    where catalog.id=$path[3]
                ");
                $rec = mysql_fetch_assoc($q);

                $text.='<h1>' . $title . '</h1>

<div class="cart" style="float: right; width: 200px; border: solid 1px gray;   border-radius: 10px;margin: 3px; text-align: center;">


<nobr><!--p style="font-size:2em">Цена: 145 <span class="rur">p<span>уб.</span></span></p--></nobr>

<img src="/images/cart1.png" /><br />
<a href=""></a>
<a href="/to_basket?item='.$rec['id'].'" class="to-basket"><span>Добавить в корзину!</span></a>

</div>


';//.  show_context($path);
                
         $text.= '
             <script type="text/javascript">
               jQuery("a.to-basket").each(function(){
                   jQuery(this).bind("click",function(){
                       var urlTo=jQuery(this).attr("href");
                       var parent=jQuery(this).parent().parent();
                       var parOff=parent.offset();
                       var baskOff=jQuery(".RightMenu #basket").offset();
                       var an=jQuery("h1",parent).clone();                       
                       jQuery(an).css({ "position": "absolute", "top": parOff.top, "left": parOff.left , "z-index":999, "width":"298px", "height":"auto","overflow":"hidden"});
                       an.appendTo("body");
                       jQuery(an).animate({ opacity: 0, "width": parent.css("width")-20, "height": parent.css("height"), "top": baskOff.top + 30, "left": baskOff.left + 15 }, 1000, function(){jQuery(this).remove();});
                       jQuery.post(urlTo , {d:1},function(data){
                            var side=jQuery(".RightMenu");                            
                            var bask=jQuery("#basket #short_info", side);

                            if (!jQuery("#"+data.id, bask).html()){
                                    if (jQuery(bask).html().trim()=="Ваша корзина пуста.")
                                      jQuery(bask).html("");
                                    jQuery(bask).append(data.html);
                            }else{
                                jQuery("#"+data.id, bask).replaceWith(data.html);
                            }

                            jQuery(bask).slideDown(5000);
                            ReactivateDel();
                       }, "json");
                       return false;
                   });

               });
             </script>
         ';
                
                //$text.='<h1> «' . $rec['title'] . '»</h1>';
            if ($_SESSION['level'] >= 5){ 
             $text.='<div ondblclick="parent.location=\'/ADM/edit/' . $rec['id'] . '/?vid=catalog\'" title="Кликните дважды для редактирования">
                            <a href="/ADM/delete/'.$rec['id'].'/?vid=catalog">Удалить</a>
                ';
             $text.='<a href="/ADM/edit/' . $rec['id'] . '/?vid=catalog" style="color: red">Редактировать</a><br />';
            }
                if (!empty($t['about']))
                    $text.='Краткое описание:<br /><i>' . $rec['about'] . '</i><br /><br />';

                if (file_exists(LocalDir . '/images/catalog/' . $rec['id'] . '---235.jpg'))
                    $text.='<img style="float: left; padding: 5px;" alt="' . $rec['title'] . '" title="' . $rec['title'] . '" src="/images/catalog/' . $rec['id'] . '---235.jpg" width="140" />';

                // поочередно выводим карточку товара
             /*   Производитель
Форма выпуска
Состав
Показания
Способ применения
Побочное действие
Противопоказания */
                $card = array('Производитель'=>'firma','Описание'=>'description','Форма выпуска'=>'forma','Состав'=>'sostav','Показания'=>'pokaz','Способ применения'=>'sposob',
                    'Побочное действие'=>'pobochka','Противопоказания'=>'protivo');
                foreach ($card as $k=>$v){
                    if ($v == 'firma') $rec[$v] ='<a href="/catalog/firms/'.$rec['fname'].'">'.$rec['firma'].'</a>';
                        $text .= '<h2>'.$k.'</h2>';
                    if ($v=='forma' && $rec['idforma']>0){
                        $forma=mysql_fetch_assoc(mysql_query('select title  from forma where id='.$rec['idforma']));
                        $text.=$forma['title'];
                    }else
                    if ($v=='sostav'){                        
                        $q=mysql_query('select * from cat_sostav cs left join sostav s on s.id=cs.idsost where cs.idcat='.$rec['id']);
                        if (mysql_affected_rows()>0){
                            $text.='<ul>';
                            while ($r=  mysql_fetch_assoc($q)){
                                $text.='<li>'.$r['title'].'</li>';
                            }
                            $text.='</ul>';
                        }
                    }else
                    if ($v=='pokaz'){
                        $q=mysql_query('select * from cat_pokaz cs left join pokaz s on s.id=cs.idpokaz where cs.idcat='.$rec['id']);
                        if (mysql_affected_rows()>0){
                            $text.='<ul>';
                            while ($r=  mysql_fetch_assoc($q)){
                                $text.='<li>'.$r['title'].'</li>';
                            }
                            $text.='</ul>';
                        }
                    }else
                    if (empty ($rec[$v])) $text .= 'Нет данных';
                    else $text .= $rec[$v];

                }

              // перелинковка
               $text .= '<hr />Другие <strong>гомеопатические препараты</strong> в группе заболеваний
                   «<strong><a href="/catalog/disease/'.$rec['zname'].'">'.$rec['disease'].'</a></strong>»';

             $text .= relink('zab', $rec['zid']);

             $text .= '<hr />Другие <strong>гомеопатические препараты</strong> производителя
                   «<strong><a href="/catalog/firms/'.$rec['fid'].'">'.$rec['firma'].'</a></strong>»';

             $text .= relink('firm', $rec['fid']);


            $text.='<script type="text/javascript">
                    $(document).ready(function(){
                    jQuery().piroBox({
                        my_speed: 300, //animation speed
                        bg_alpha: 0.5, //background opacity
                        slideShow : "true", // true == slideshow on, false == slideshow off
                        slideSpeed : 3, //slideshow
                        close_all : ".piro_close" // add class .piro_overlay(with comma)if you want overlay click close piroBox
                        });
                    });</script>
                    ';


        if ($target == 'title') echo $rec['title'];
        if ($target == 'content')            echo $text;
}


?>
